<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- saved from url=(0043)http://xml.resource.org/cgi-bin/xml2rfc.cgi -->
<HTML lang="en"><HEAD><META http-equiv="Content-Type" content="text/html; charset=UTF-8"><TITLE>Draft: OInvite Core 1.0 - Draft 3</TITLE>
<META http-equiv="Expires" content="Wed, 24 Mar 2010 18:28:12 +0000">

<META name="description" content="OInvite Core 1.0 - Draft 3">
<META name="generator" content="xml2rfc v1.34 (http://xml.resource.org/)">
<STYLE type="text/css"><!--
        body {
                font-family: verdana, charcoal, helvetica, arial, sans-serif;
                font-size: small; color: #000; background-color: #FFF;
                margin: 2em;
        }
        h1, h2, h3, h4, h5, h6 {
                font-family: helvetica, monaco, "MS Sans Serif", arial, sans-serif;
                font-weight: bold; font-style: normal;
        }
        h1 { color: #900; background-color: transparent; text-align: right; }
        h3 { color: #333; background-color: transparent; }

        td.RFCbug {
                font-size: x-small; text-decoration: none;
                width: 30px; height: 30px; padding-top: 2px;
                text-align: justify; vertical-align: middle;
                background-color: #000;
        }
        td.RFCbug span.RFC {
                font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;
                font-weight: bold; color: #666;
        }
        td.RFCbug span.hotText {
                font-family: charcoal, monaco, geneva, "MS Sans Serif", helvetica, verdana, sans-serif;
                font-weight: normal; text-align: center; color: #FFF;
        }

        table.TOCbug { width: 30px; height: 15px; }
        td.TOCbug {
                text-align: center; width: 30px; height: 15px;
                color: #FFF; background-color: #900;
        }
        td.TOCbug a {
                font-family: monaco, charcoal, geneva, "MS Sans Serif", helvetica, sans-serif;
                font-weight: bold; font-size: x-small; text-decoration: none;
                color: #FFF; background-color: transparent;
        }

        td.header {
                font-family: arial, helvetica, sans-serif; font-size: x-small;
                vertical-align: top; width: 33%;
                color: #FFF; background-color: #666;
        }
        td.author { font-weight: bold; font-size: x-small; margin-left: 4em; }
        td.author-text { font-size: x-small; }

        /* info code from SantaKlauss at http://www.madaboutstyle.com/tooltip2.html */
        a.info {
                /* This is the key. */
                position: relative;
                z-index: 24;
                text-decoration: none;
        }
        a.info:hover {
                z-index: 25;
                color: #FFF; background-color: #900;
        }
        a.info span { display: none; }
        a.info:hover span.info {
                /* The span will display just on :hover state. */
                display: block;
                position: absolute;
                font-size: smaller;
                top: 2em; left: -5em; width: 15em;
                padding: 2px; border: 1px solid #333;
                color: #900; background-color: #EEE;
                text-align: left;
        }

        a { font-weight: bold; }
        a:link    { color: #900; background-color: transparent; }
        a:visited { color: #633; background-color: transparent; }
        a:active  { color: #633; background-color: transparent; }

        p { margin-left: 2em; margin-right: 2em; }
        p.copyright { font-size: x-small; }
        p.toc { font-size: small; font-weight: bold; margin-left: 3em; }
        table.toc { margin: 0 0 0 3em; padding: 0; border: 0; vertical-align: text-top; }
        td.toc { font-size: small; font-weight: bold; vertical-align: text-top; }

        ol.text { margin-left: 2em; margin-right: 2em; }
        ul.text { margin-left: 2em; margin-right: 2em; }
        li      { margin-left: 3em; }

        /* RFC-2629 <spanx>s and <artwork>s. */
        em     { font-style: italic; }
        strong { font-weight: bold; }
        dfn    { font-weight: bold; font-style: normal; }
        cite   { font-weight: normal; font-style: normal; }
        tt     { color: #036; }
        tt, pre, pre dfn, pre em, pre cite, pre span {
                font-family: "Courier New", Courier, monospace; font-size: small;
        }
        pre {
                text-align: left; padding: 4px;
                color: #000; background-color: #CCC;
        }
        pre dfn  { color: #900; }
        pre em   { color: #66F; background-color: #FFC; font-weight: normal; }
        pre .key { color: #33C; font-weight: bold; }
        pre .id  { color: #900; }
        pre .str { color: #000; background-color: #CFF; }
        pre .val { color: #066; }
        pre .rep { color: #909; }
        pre .oth { color: #000; background-color: #FCF; }
        pre .err { background-color: #FCC; }

        /* RFC-2629 <texttable>s. */
        table.all, table.full, table.headers, table.none {
                font-size: small; text-align: center; border-width: 2px;
                vertical-align: top; border-collapse: collapse;
        }
        table.all, table.full { border-style: solid; border-color: black; }
        table.headers, table.none { border-style: none; }
        th {
                font-weight: bold; border-color: black;
                border-width: 2px 2px 3px 2px;
        }
        table.all th, table.full th { border-style: solid; }
        table.headers th { border-style: none none solid none; }
        table.none th { border-style: none; }
        table.all td {
                border-style: solid; border-color: #333;
                border-width: 1px 2px;
        }
        table.full td, table.headers td, table.none td { border-style: none; }

        hr { height: 1px; }
        hr.insert {
                width: 80%; border-style: none; border-width: 0;
                color: #CCC; background-color: #CCC;
        }
--></STYLE>
</HEAD><BODY>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<TABLE summary="layout" width="66%" border="0" cellpadding="0" cellspacing="0"><TBODY><TR><TD><TABLE summary="layout" width="100%" border="0" cellpadding="2" cellspacing="1">
<TBODY><TR><TD class="header">Draft</TD><TD class="header">D. Fuelling</TD></TR>
<TR><TD class="header">&nbsp;</TD><TD class="header">Sappenin Technologies</TD></TR>
<TR><TD class="header">&nbsp;</TD><TD class="header">March 24, 2010</TD></TR>
</TBODY></TABLE></TD></TR></TBODY></TABLE>
<H1><BR>OInvite Core 1.0 - Draft 3</H1>

<H3>Abstract</H3>

<P> The OInvite protocol standardizes the manner in which
				communications relationships (e.g., friend-requests) are
				initiated
				between two users in a decentralized
				communications network.
</P>
<P>
				This document specifies OInvite Core, a
				binding-independent
				request/response format and verification protocol to initiate and
				respond
				to communications relationship requests
				originating across
				social-network and/or
				domain
				boundaries
				(e.g., a
				Google Buzz user
				desiring to follow a
				Twitter
				user's protected feed
				on
				Twitter).
</P><A name="toc"></A><BR><HR>
<H3>Table of Contents</H3>
<P class="toc">
<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor1">1.</A>&nbsp;
Definitions<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor2">1.1.</A>&nbsp;
Requirements Notation<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor3">1.2.</A>&nbsp;
Definitions<BR>
<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor4">2.</A>&nbsp;
Protocol Overview<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor5">2.1.</A>&nbsp;
Out of Scope<BR>
<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor6">3.</A>&nbsp;
OInvite Discovery<BR>
<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oi-verification-procedure">4.</A>&nbsp;
OInvite Verification Procedure<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oi-verification-extensions">4.1.</A>&nbsp;
OInvite Verification Extensions (OVE)<BR>
<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oi-message-format">5.</A>&nbsp;
OInvite Document Structure<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor7">5.1.</A>&nbsp;
Common Document Data Types<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor8">5.1.1.</A>&nbsp;
String Values<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor9">5.1.2.</A>&nbsp;
URI Values<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor10">5.1.3.</A>&nbsp;
Date/Time Values<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oi-request-message-format">5.2.</A>&nbsp;
OInvite Request Document Structure<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oi-request-schema-elements">5.2.1.</A>&nbsp;
XML Schema Elements<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oi-message-schema-request">5.2.2.</A>&nbsp;
XML Schema<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oi-response-message-format">5.3.</A>&nbsp;
OInvite Response Document Structure<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oi-response-message-elements">5.3.1.</A>&nbsp;
XML Schema Elements<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oi-message-schema-response">5.3.2.</A>&nbsp;
OInvite Response Schema<BR>
<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor20">6.</A>&nbsp;
Security Considerations<BR>
<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor21">Appendix&nbsp;A.</A>&nbsp;
Non-Normative Examples<BR>
<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor22">Appendix&nbsp;A.1.</A>&nbsp;
Example: OInvite Request<BR>
<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#anchor23">Appendix&nbsp;A.2.</A>&nbsp;
Example: OInvite Response<BR>
<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#rfc.references1">7.</A>&nbsp;
References<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#rfc.references1">7.1.</A>&nbsp;
Normative References<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#rfc.references2">7.2.</A>&nbsp;
Informative References<BR>
<A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#rfc.authors">§</A>&nbsp;
Author's Address<BR>
</P>
<BR clear="all">

<A name="anchor1"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.1"></A><H3>1.&nbsp;
Definitions</H3>

<A name="anchor2"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.1.1"></A><H3>1.1.&nbsp;
Requirements Notation</H3>

<P>
					The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
					NOT","SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL"
					inthis document are to be interpreted as described in
					<A class="info" href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#RFC2119">[RFC2119]<SPAN> (</SPAN><SPAN class="info">Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels,” March&nbsp;1997.</SPAN><SPAN>)</SPAN></A>
					.
				
</P>
<A name="anchor3"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.1.2"></A><H3>1.2.&nbsp;
Definitions</H3>

<P>
					</P>
<BLOCKQUOTE class="text"><DL>
<DT>Communications Relationship (CR)</DT>
<DD> An agreement between two parties to engage in some
							form of communication. 
</DD>
<DT>OInvite</DT>
<DD> An XML document representing an invitation to join
							a CR.  
</DD>
<DT>Invitor</DT>
<DD>The sender of an OInvite.
</DD>
<DT>Invitee</DT>
<DD>The recipient of an OInvite.
</DD>
<DT>OInvite Response</DT>
<DD> An XML document representing the Invitee's response
							to an OInvite.
</DD>
<DT>Participant</DT>
<DD>An Invitor who has sent an OInvite, or an Invitee
							who has accepted an OInvite.
</DD>
<DT>OInvite Verification Mechanism</DT>
<DD>A pluggable mechanism acceptable to Invitor and
							Invitee that is used to verify various aspects of an OInvite
							(e.g., authenticity, spaminess, etc).
</DD>
</DL></BLOCKQUOTE><P>
				
</P>
<A name="anchor4"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.2"></A><H3>2.&nbsp;
Protocol Overview</H3>

<P>
				</P>
<OL class="text">
<LI>
						OInvite specifies two types of messages: OInvite Invitations
						(OInvites) and OInvite Responses (OResponses). These messages are
						defined in section
						<A class="info" href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oi-request-message-format">Section&nbsp;5.2<SPAN> (</SPAN><SPAN class="info">OInvite Request Document Structure</SPAN><SPAN>)</SPAN></A>
						.
					
</LI>
<LI> When a particular Invitor wishes to establish a Communications
						Relationship with an Invitee, the Invitor creates a new OInvite
						and transmits it to the specified Invitee
						via an appropriate
						transport.
					
</LI>
<LI>
						Upon receiving the OInvite, the Invitee's server verifies that the
						OInvite is authentic and valid per the rules specified in
						<A class="info" href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oi-verification-procedure">Section&nbsp;4<SPAN> (</SPAN><SPAN class="info">OInvite Verification Procedure</SPAN><SPAN>)</SPAN></A>
						.
						Once a response has been readied, an OInvite Response is returned
						back to the
						Invitor.
					
</LI>
</OL><P>
			
</P>
<A name="anchor5"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.2.1"></A><H3>2.1.&nbsp;
Out of Scope</H3>

<P> The following are out of scope for OInvite Core and may be
					defined by OInvite extensions or other specifications:
</P>
<P>
					</P>
<BLOCKQUOTE class="text"><DL>
<DT>OInvite Client-Server Interaction</DT>
<DD>This document does not define an
							API or other
							protocol to allow an end-user to interact with an
							OInvite server
							to perform various operations on the user's
							established or pending
							OInvites (e.g., approving, rejecting,
							querying, editing or
							deleting OInvites). 
</DD>
<DT>Transport</DT>
<DD>OInvite messages are not restricted to any
							particular transport binding. 
</DD>
<DT>OInvite Termination</DT>
<DD>This document does not specify how to terminate a
							Communications Relationship (often, this can be done silently).
</DD>
</DL></BLOCKQUOTE><P>
				
</P>
<A name="anchor6"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.3"></A><H3>3.&nbsp;
OInvite Discovery</H3>

<P>
				This document does not formalize
				any particular
				discovery mechanism
				for
				OInvite Identifiers, which are URI's. Instead,
				each
				implementation
				or an OInvite extension MAY
				determine appropriate
				discovery
				mechansims
				in
				order to
				find out more
				information about a particular
				Identifier, as
				well as which transport to use to send and receive OInvites, and
				where to send them.
			
</P>
<A name="oi-verification-procedure"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.4"></A><H3>4.&nbsp;
OInvite Verification Procedure</H3>

<P> Before accepting a particular OInvite and otherwise prompting
				or
				alerting an Invitee, implementations MUST verify the contents
				of an
				OInvite per the following procedure:
</P>
<P>
				</P>
<OL class="text">
<LI>
						Verify that the OInvite includes all necessary elements, such as
						an 'id' and 'requestType'.
						<BR>
<BR>

					
</LI>
<LI>
						Verify the value of the 'InviteeId' element to ensure that it
						represents a valid user on the system.
						<BR>
<BR>

					
</LI>
<LI>
						Verify the valud of the 'InvitorId' element to ensure that it
						represents a sender that is not flagged by some other
						spam-related
						or system resource, such as an automatic-deny-list.
						<BR>
<BR>

					
</LI>
<LI>
						Follow the rules of any OInvite Verification Extension that is
						advertised on behalf of the invitee, found via OInvite discovery.
					
</LI>
</OL><P>
			
</P>
<A name="oi-verification-extensions"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.4.1"></A><H3>4.1.&nbsp;
OInvite Verification Extensions (OVE)</H3>

<P>
					OInvite Core leaves room for verification
					extensions that can be
					used to
					aid a recipient in trying to
					determine if a particular
					OInvite is valid and
					authentic, and
					whether or not the invitation
					should be forwarded to an actual user or processed automatically.
				
</P>
<P>
					As an example, see
					<A class="info" href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#oinvite-ev-pow">[oinvite‑ev‑pow]<SPAN> (</SPAN><SPAN class="info">Fuelling, D., “OInvite POW Verification,” 2010.</SPAN><SPAN>)</SPAN></A>
					for an example of one such OEV that details a system to help
					prevent
					invitation spam.
				
</P>
<A name="oi-message-format"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5"></A><H3>5.&nbsp;
OInvite Document Structure</H3>

<P>
				OInvite specifies a message format using XML Schema. The following
				sub-sections detail the
				elements, attributes, and schema of all
				OInvite Core message types.
			
</P>
<A name="anchor7"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.1"></A><H3>5.1.&nbsp;
Common Document Data Types</H3>

<A name="anchor8"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.1.1"></A><H3>5.1.1.&nbsp;
String Values</H3>

<P>
						All OInvite string values have the type
						xs:string,
						which
						is
						built in
						to the W3C
						<A class="info" href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#xml-schema-datatypes">[xml‑schema‑datatypes]<SPAN> (</SPAN><SPAN class="info">Biron, P. and A. Malhotra, “XML Schema Datatypes,” 2004.</SPAN><SPAN>)</SPAN></A>
						specification.
						Unless
						otherwise noted in this specification or
						extensions,
						all
						strings in OInvite documents MUST consist of
						at
						least
						one
						non-whitespace character (whitespace is defined in
						section 2.3
						of
						<A class="info" href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#xml-1.0">[xml‑1.0]<SPAN> (</SPAN><SPAN class="info">Bray, T., Paoli, J., Sperberg-McQueen, C., Maler, E., and F. Yergeau, “Extensible Markup Language (XML) 1.0,” 2008.</SPAN><SPAN>)</SPAN></A>
						).
					
</P>
<A name="anchor9"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.1.2"></A><H3>5.1.2.&nbsp;
URI Values</H3>

<P>
						All OInvite URI reference values have the type xs:anyURI,
						which is
						built in to the W3C
						<A class="info" href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#xml-schema-datatypes">[xml‑schema‑datatypes]<SPAN> (</SPAN><SPAN class="info">Biron, P. and A. Malhotra, “XML Schema Datatypes,” 2004.</SPAN><SPAN>)</SPAN></A>
						specification. Unless otherwise noted in this
						specification or
						extensions, all URIs in an OInvite document MUST
						consist of at
						least
						one non-whitespace character (whitespace is
						defined in section
						2.3
						of
						<A class="info" href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#xml-1.0">[xml‑1.0]<SPAN> (</SPAN><SPAN class="info">Bray, T., Paoli, J., Sperberg-McQueen, C., Maler, E., and F. Yergeau, “Extensible Markup Language (XML) 1.0,” 2008.</SPAN><SPAN>)</SPAN></A>
						). Additionally, Comparison of this value MUST be performed
						using
						the scheme-specific normalization rules for the URI, as
						specified
						in Section 6.2.3 of
						<A class="info" href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#RFC3986">[RFC3986]<SPAN> (</SPAN><SPAN class="info">Berners-Lee, T., Fielding, R., and L. Masinter, “Uniform Resource Identifier (URI): Generic Syntax,” January&nbsp;2005.</SPAN><SPAN>)</SPAN></A>
					
</P>
<A name="anchor10"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.1.3"></A><H3>5.1.3.&nbsp;
Date/Time Values</H3>

<P>All OInvite date and time values have the
						type xs:dateTime, which
						is built in to the W3C [XML Schema
						Datatypes] specification. Time
						values MUST be represented with the
						UTC designator 'Z'. OInvite
						providers MUST NOT generate time
						instants that specify leap
						seconds.
</P>
<A name="oi-request-message-format"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.2"></A><H3>5.2.&nbsp;
OInvite Request Document Structure</H3>

<A name="oi-request-schema-elements"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.2.1"></A><H3>5.2.1.&nbsp;
XML Schema Elements</H3>

<A name="anchor11"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.2.1.1"></A><H3>5.2.1.1.&nbsp;
xml:id</H3>

<P>
							This attribute, of type xs:ID, is defined by
							<A class="info" href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#xml-id">[xml‑id]<SPAN> (</SPAN><SPAN class="info">Marsh, J., Veillard, D., and N. Walsh, “xml:id,” 2005.</SPAN><SPAN>)</SPAN></A>
							and provides a unique identifier for an OInvite.
						
</P>
<A name="oi-request-message-format-creationdate"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.2.1.2"></A><H3>5.2.1.2.&nbsp;
CreationDate</H3>

<P>
							The date/time that this OInvite was created.
						
</P>
<A name="anchor12"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.2.1.3"></A><H3>5.2.1.3.&nbsp;
InvitorId</H3>

<P>
							A URI that identifies the sender of an OInvite. This value MUST
							be
							an absolute URI.
							.
							<BR>
<BR>

							Note that it will be desirable if this identifier is resolvable
							in
							order to provide the Invitee with more information about the
							Invitor.
						
</P>
<A name="anchor13"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.2.1.4"></A><H3>5.2.1.4.&nbsp;
InvitorName</H3>

<P> An optional full name for the Invitor, limited to 30
							UTF-8
							characters.
</P>
<A name="anchor14"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.2.1.5"></A><H3>5.2.1.5.&nbsp;
InviteeId</H3>

<P>
							A URI that identifies the recipient of an OInvite. This value
							MUST
							be
							an absolute URI.
						
</P>
<A name="request-type"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.2.1.6"></A><H3>5.2.1.6.&nbsp;
RequestType</H3>

<P> One of either 'READ', 'WRITE', or 'BOTH'. 
</P>
<P> 'READ' is used to indicate that the Invitor would like to
							receive information from the Invitee, but does
							not desire
							to
							send
							information (i.e., this is a 1-way communications
							relationship).
							A
							potential example of this type of CR is one where
							the Invitor
							desires to read information that the Invitee is posting
							to a
							private news feed or activity stream.
						
</P>
<P> 'WRITE' is used to indicate that the Invitor would like to
							send
							information to the Invitee, but does not desire to
							receive
							information back (i.e., this is a
							1-way communications
							relationship). A potential example of this
							type of CR is one where
							the Invitor
							desires to send information to
							a resource controlled
							by
							the Invitee, such as a comment feed.
						
</P>
<P> 'BOTH' is used to indicate that the Invitor would like to both
							send and receive
							information to and from the Invitee (a
							bi-direcitonal
							communications
							relationship).
						
</P>
<A name="verification-extension-type"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.2.1.7"></A><H3>5.2.1.7.&nbsp;
VerificationExtensionType</H3>

<P> A URI specifying the type of verification extension that
							should be used to verify this OInvite, as defined in an OInvite
							Verification Extension document.
						
</P>
<A name="subjects"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.2.1.8"></A><H3>5.2.1.8.&nbsp;
Subjects</H3>

<P> A list of URIs, with each URI representing the indicated
							resources that this OInvite pertains to.
						
</P>
<A name="oi-message-schema-request"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.2.2"></A><H3>5.2.2.&nbsp;
XML Schema</H3>

<P>
						
</P><P>
</P><DIV style="display: table; width: 0; margin-left: 3em; margin-right: auto"><PRE>
  &lt;?xml version="1.0"?&gt;
  &lt;xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
    targetNamespace="http://www.oinvite.net/core/1.0"
    xmlns="http://www.oinvite.net/core/1.0" elementFormDefault="qualified"&gt;

    &lt;xs:element name="oirequest"&gt;
      &lt;xs:attribute name="xml:id" type="xs:ID"/&gt;
      &lt;xs:complexType&gt;
        &lt;xs:sequence&gt;
          &lt;xs:element name="creationDate" type="xs:dateTime"/&gt;
          &lt;xs:element name="invitorId" type="xs:anyURI"/&gt;
          &lt;xs:element name="invitorName" type="xs:string"/&gt;
          &lt;xs:element name="inviteeId" type="xs:anyURI"/&gt;
          &lt;xs:element name="requestType"&gt;
            &lt;xs:simpleType&gt;
              &lt;xs:restriction base="xs:string"&gt;
                &lt;xs:enumeration value="READ"/&gt;
                &lt;xs:enumeration value="WRITE"/&gt;
                &lt;xs:enumeration value="BOTH"/&gt;
              &lt;/xs:restriction&gt;
            &lt;/xs:simpleType&gt;
          &lt;/xs:element&gt;
          &lt;xs:element name="subjects" minOccurs="0" maxOccurs="1"&gt;
            &lt;xs:sequence&gt;
              &lt;xs:element name="subject" minOccurs="0" maxOccurs="unbounded"/&gt;
            &lt;/xs:sequence&gt;
          &lt;/xs:element&gt;
          &lt;xs:element name="verificationExtensionType" type="xs:anyURI"/&gt;
        &lt;/xs:sequence&gt;
      &lt;/xs:complexType&gt;
    &lt;/xs:element&gt;

  &lt;/xs:schema&gt;

</PRE></DIV>
					

<A name="oi-response-message-format"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.3"></A><H3>5.3.&nbsp;
OInvite Response Document Structure</H3>

<A name="oi-response-message-elements"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.3.1"></A><H3>5.3.1.&nbsp;
XML Schema Elements</H3>

<A name="anchor15"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.3.1.1"></A><H3>5.3.1.1.&nbsp;
xml:id</H3>

<P>
							This attribute, of type xs:ID, is defined by
							<A class="info" href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#xml-id">[xml‑id]<SPAN> (</SPAN><SPAN class="info">Marsh, J., Veillard, D., and N. Walsh, “xml:id,” 2005.</SPAN><SPAN>)</SPAN></A>
							and provides a unique identifier for an OInvite.
						
</P>
<A name="anchor16"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.3.1.2"></A><H3>5.3.1.2.&nbsp;
CreationDate</H3>

<P>
							The date/time that this OInvite Response was created.
						
</P>
<A name="anchor17"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.3.1.3"></A><H3>5.3.1.3.&nbsp;
RequestId</H3>

<P> The xml:id of the OInvite Request that this document is in
							response to.
</P>
<A name="anchor18"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.3.1.4"></A><H3>5.3.1.4.&nbsp;
Response</H3>

<P> One of either 'ACCEPT', 'DENY', or 'INVALID'. 
</P>
<P> 'ACCEPT' is used to indicate that the Invitee has accepted the
							OInvite and agrees to enter into a communications relationship
							specified by the OInvite Request.
</P>
<P> 'DENY' is used to indicate that the Invitee has declined the
							OInvite, and does not wish to enter into a communications
							relationship as specified by the OInvite Request. 
</P>
<P> 'INVALID' is used to indicate that the OInvite was invalid or
							otherwise unacceptable to the Invitee's OInvite server. 
</P>
<A name="anchor19"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.3.1.5"></A><H3>5.3.1.5.&nbsp;
Reason</H3>

<P> An optional textual string that can be used to augment the
							'response',
							such as and error message explaining why an OInvite
							failed or was
							invalid. 
</P>
<A name="oi-message-schema-response"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.5.3.2"></A><H3>5.3.2.&nbsp;
OInvite Response Schema</H3>

<P>
						
</P><P>
</P><DIV style="display: table; width: 0; margin-left: 3em; margin-right: auto"><PRE>
  &lt;?xml version="1.0"?&gt;
  &lt;xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
    targetNamespace="http://www.oinvite.net/core/1.0"
    xmlns="http://www.oinvite.netcore/1.0" elementFormDefault="qualified"&gt;

    &lt;xs:element name="oiresponse"&gt;
      &lt;xs:attribute name="xml:id" type="xs:ID"/&gt;
      &lt;xs:complexType&gt;
        &lt;xs:sequence&gt;
          &lt;xs:element name="creationDate" type="xs:dateTime"/&gt;
            &lt;xs:element name="requestId" type="xs:anyURI"/&gt;
            &lt;xs:element name="response"&gt;
            &lt;xs:simpleType&gt;
              &lt;xs:restriction base="xs:string"&gt;
                &lt;xs:enumeration value="ACCEPT"/&gt;
                &lt;xs:enumeration value="DENY"/&gt;
                &lt;xs:enumeration value="INVALID"/&gt;
              &lt;/xs:restriction&gt;
            &lt;/xs:simpleType&gt;
          &lt;/xs:element&gt;
          &lt;xs:element name="reason" type="xs:string"/&gt;
        &lt;/xs:sequence&gt;
      &lt;/xs:complexType&gt;
    &lt;/xs:element&gt;

  &lt;/xs:schema&gt;

</PRE></DIV>
					

<A name="anchor20"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.6"></A><H3>6.&nbsp;
Security Considerations</H3>

<P>
				</P>
<BLOCKQUOTE class="text"><DL>
<DT>Identity Verification</DT>
<DD>This specification does not address the question of
						Invitor nor Invitee identifier verification. Implementations
						should take care to employ best practices and/or
						OInvite Extension
						Verification callbacks for spam-prevention and
						increased security.  
					
</DD>
<DT>OInvite Content Inspection</DT>
<DD>OInvite does not place any restrictions on
						the
						contents of certain
						OInvite document fields, such as the
						InvitorName. Likewise, extensions may define document content that
						is free-form in nature.
						For this reason,
						implementations should take
						care to
						ensure that the content of any OInvite element is
						suitable
						for display to, and use by, end-users.
					
</DD>
</DL></BLOCKQUOTE><P>
			
</P>
<A name="anchor21"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.A"></A><H3>Appendix A.&nbsp;
Non-Normative Examples</H3>

<A name="anchor22"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.A.1"></A><H3>Appendix A.1.&nbsp;
Example: OInvite Request</H3>

<P>
					The following is a non-normative example of a simple OInvite
					Request:
					
</P><P>Example:
</P><DIV style="display: table; width: 0; margin-left: 3em; margin-right: auto"><PRE>
  &lt;oirequest xmlns="http://www.oinvite.net/core/1.0"
  	xml:id="tag:foo.com,2005:8.3093"&gt;

    &lt;creationDate&gt;2009-06-01T18:30:02.25Z&lt;/creationDate&gt;
    &lt;invitorId&gt;bob@example.com&lt;/invitorId&gt;
    &lt;fullName&gt;Bob Smith&lt;/fullName&gt;
    &lt;inviteeId&gt;alice@example.net&lt;/inviteeId&gt;
    &lt;requestType&gt;BOTH&lt;/requestType&gt;
    &lt;subjects&gt;
    	&lt;subject&gt;http://example.com/userposts&lt;/subject&gt;
    &lt;/subjects&gt;
    &lt;verificationExtension/&gt;

  &lt;/oirequest&gt;

</PRE></DIV>
				

<A name="anchor23"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.A.2"></A><H3>Appendix A.2.&nbsp;
Example: OInvite Response</H3>

<P>
					
</P><P>The following is non-normative example of a OInvite
							Response where an Invitee has accepted an OInvite:
</P><DIV style="display: table; width: 0; margin-left: 3em; margin-right: auto"><PRE>
  &lt;oiresponse xmlns="http://www.oinvite.net/core/1.0"
  	xml:id="tag:foo.com,2005:8.3093"&gt;

    &lt;requestId&gt;tag:foo.com,2005:8.3094&lt;/requestId&gt;
    &lt;response&gt;ACCEPT&lt;/response&gt;
    &lt;creationDate&gt;2009-06-01T18:30:02.25Z&lt;/creationDate&gt;

  &lt;/oiresponse&gt;

</PRE></DIV>
				

<A name="rfc.references"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<A name="rfc.section.7"></A><H3>7.&nbsp;
References</H3>

<A name="rfc.references1"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<H3>7.1.&nbsp;Normative References</H3>
<TABLE width="99%" border="0">
<TBODY><TR><TD class="author-text" valign="top"><A name="RFC2119">[RFC2119]</A></TD>
<TD class="author-text"><A href="mailto:sob@harvard.edu">Bradner, S.</A>, “<A href="http://tools.ietf.org/html/rfc2119">Key words for use in RFCs to Indicate Requirement Levels</A>,” BCP&nbsp;14, RFC&nbsp;2119, March&nbsp;1997 (<A href="ftp://ftp.isi.edu/in-notes/rfc2119.txt">TXT</A>, <A href="http://xml.resource.org/public/rfc/html/rfc2119.html">HTML</A>, <A href="http://xml.resource.org/public/rfc/xml/rfc2119.xml">XML</A>).</TD></TR>
<TR><TD class="author-text" valign="top"><A name="RFC3986">[RFC3986]</A></TD>
<TD class="author-text"><A href="mailto:timbl@w3.org">Berners-Lee, T.</A>, <A href="mailto:fielding@gbiv.com">Fielding, R.</A>, and <A href="mailto:LMM@acm.org">L. Masinter</A>, “<A href="http://tools.ietf.org/html/rfc3986">Uniform Resource Identifier (URI): Generic Syntax</A>,” STD&nbsp;66, RFC&nbsp;3986, January&nbsp;2005 (<A href="ftp://ftp.isi.edu/in-notes/rfc3986.txt">TXT</A>, <A href="http://xml.resource.org/public/rfc/html/rfc3986.html">HTML</A>, <A href="http://xml.resource.org/public/rfc/xml/rfc3986.xml">XML</A>).</TD></TR>
<TR><TD class="author-text" valign="top"><A name="XRD">[XRD]</A></TD>
<TD class="author-text">Hammer-Lahav, E., Norris, W., Davis, P., and D. Reed, “<A href="http://tools.oasis-open.org/version-control/browse/wsvn/xri/xrd/1.0/drafts/wd15/xrd-1.0-wd15.html">Extensible Resource Descriptor (XRD) Version 1.0 (Draft 15)</A>,” 2010.</TD></TR>
<TR><TD class="author-text" valign="top"><A name="xml-1.0">[xml-1.0]</A></TD>
<TD class="author-text">Bray, T., Paoli, J., Sperberg-McQueen, C., Maler, E., and F. Yergeau, “<A href="http://www.w3.org/TR/REC-xml/">Extensible Markup Language (XML) 1.0</A>,” 2008.</TD></TR>
<TR><TD class="author-text" valign="top"><A name="xml-id">[xml-id]</A></TD>
<TD class="author-text">Marsh, J., Veillard, D., and N. Walsh, “<A href="http://www.w3.org/TR/xml-id/">xml:id</A>,” 2005.</TD></TR>
<TR><TD class="author-text" valign="top"><A name="xml-schema-datatypes">[xml-schema-datatypes]</A></TD>
<TD class="author-text">Biron, P. and A. Malhotra, “<A href="http://www.w3.org/TR/xmlschema-2/">XML Schema Datatypes</A>,” 2004.</TD></TR>
</TBODY></TABLE>

<A name="rfc.references2"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<H3>7.2.&nbsp;Informative References</H3>
<TABLE width="99%" border="0">
<TBODY><TR><TD class="author-text" valign="top"><A name="RFC3920">[RFC3920]</A></TD>
<TD class="author-text"><A href="mailto:stpeter@jabber.org">Saint-Andre, P., Ed.</A>, “<A href="http://tools.ietf.org/html/rfc3920">Extensible Messaging and Presence Protocol (XMPP): Core</A>,” RFC&nbsp;3920, October&nbsp;2004 (<A href="ftp://ftp.isi.edu/in-notes/rfc3920.txt">TXT</A>, <A href="http://xml.resource.org/public/rfc/html/rfc3920.html">HTML</A>, <A href="http://xml.resource.org/public/rfc/xml/rfc3920.xml">XML</A>).</TD></TR>
<TR><TD class="author-text" valign="top"><A name="RFC4151">[RFC4151]</A></TD>
<TD class="author-text">Kindberg, T. and S. Hawke, “<A href="http://tools.ietf.org/html/rfc4151">The 'tag' URI Scheme</A>,” RFC&nbsp;4151, October&nbsp;2005 (<A href="ftp://ftp.rfc-editor.org/in-notes/rfc4151.txt">TXT</A>).</TD></TR>
<TR><TD class="author-text" valign="top"><A name="RFC4287">[RFC4287]</A></TD>
<TD class="author-text"><A href="mailto:mnot@pobox.com">Nottingham, M., Ed.</A> and <A href="mailto:rfsayre@boswijck.com">R. Sayre, Ed.</A>, “<A href="http://tools.ietf.org/html/rfc4287">The Atom Syndication Format</A>,” RFC&nbsp;4287, December&nbsp;2005 (<A href="ftp://ftp.isi.edu/in-notes/rfc4287.txt">TXT</A>, <A href="http://xml.resource.org/public/rfc/html/rfc4287.html">HTML</A>, <A href="http://xml.resource.org/public/rfc/xml/rfc4287.xml">XML</A>).</TD></TR>
<TR><TD class="author-text" valign="top"><A name="oinvite-ev-pow">[oinvite-ev-pow]</A></TD>
<TD class="author-text">Fuelling, D., “<A href="http://www.oinvite.net/">OInvite POW Verification</A>,” 2010.</TD></TR>
<TR><TD class="author-text" valign="top"><A name="oinvite-identifier-discovery">[oinvite-identifier-discovery]</A></TD>
<TD class="author-text">Fuelling, D., “<A href="http://www.oinvite.net/">OInvite Identifier Discovery</A>,” 2010.</TD></TR>
</TBODY></TABLE>

<A name="rfc.authors"></A><BR><HR>
<TABLE summary="layout" cellpadding="0" cellspacing="2" class="TOCbug" align="right"><TBODY><TR><TD class="TOCbug"><A href="http://xml.resource.org/cgi-bin/xml2rfc.cgi#toc">&nbsp;TOC&nbsp;</A></TD></TR></TBODY></TABLE>
<H3>Author's Address</H3>
<TABLE width="99%" border="0" cellpadding="0" cellspacing="0">
<TBODY><TR><TD class="author-text">&nbsp;</TD>
<TD class="author-text">David Fuelling</TD></TR>
<TR><TD class="author-text">&nbsp;</TD>
<TD class="author-text">Sappenin Technologies, LLC</TD></TR>
<TR><TD class="author-text">&nbsp;</TD>
<TD class="author-text">Salt Lake City, UT  84117</TD></TR>
<TR><TD class="author-text">&nbsp;</TD>
<TD class="author-text">USA</TD></TR>
<TR><TD class="author" align="right">Email:&nbsp;</TD>
<TD class="author-text"><A href="mailto:sappenin@gmail.com">sappenin@gmail.com</A></TD></TR>
<TR><TD class="author" align="right">URI:&nbsp;</TD>
<TD class="author-text"><A href="http://www.oinvite.net/">http://www.oinvite.net</A></TD></TR>
</TBODY></TABLE>


</BODY></HTML>